<?xml version="1.0" encoding="utf-8"?>
<xsl:stylesheet version="1.0" 
		xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

		xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0"
		xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0"
		xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"
		xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0"
		xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
		xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:dc="http://purl.org/dc/elements/1.1/"
		xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
		xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
		xmlns:presentation="urn:oasis:names:tc:opendocument:xmlns:presentation:1.0"
		xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
		xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
		xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
		xmlns:math="http://www.w3.org/1998/Math/MathML"
		xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0"
		xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0"
		xmlns:ooo="http://openoffice.org/2004/office"
		xmlns:ooow="http://openoffice.org/2004/writer"
		xmlns:oooc="http://openoffice.org/2004/calc"
		xmlns:dom="http://www.w3.org/2001/xml-events"
		xmlns:xforms="http://www.w3.org/2002/xforms"
		xmlns:xsd="http://www.w3.org/2001/XMLSchema"
		xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
		xmlns:smil="urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0"
		xmlns:anim="urn:oasis:names:tc:opendocument:xmlns:animation:1.0"
		xmlns:rpt="http://openoffice.org/2005/report"
		xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2"
		xmlns:xhtml="http://www.w3.org/1999/xhtml"
		xmlns:grddl="http://www.w3.org/2003/g/data-view#"
		xmlns:officeooo="http://openoffice.org/2009/office"
		xmlns:tableooo="http://openoffice.org/2009/table"
		xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
		xmlns:formx="urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" 
>

<!--   template identité : copie tout de l'entrée sur la sortie -->

<xsl:template match="node()|@*">
  <xsl:param name="file"></xsl:param>
    <xsl:copy>
      <xsl:apply-templates select="node()|@*"><xsl:with-param name="file" ><xsl:value-of select="$file"/></xsl:with-param></xsl:apply-templates>
    </xsl:copy>
  </xsl:template>



  <xsl:template match="office:document-content">
    <xsl:copy>
	<office:scripts/>
	<office:automatic-styles>
        <xsl:apply-templates  select="document('list.xml')/list/doc" mode="styles"/>
	</office:automatic-styles>
	<office:body>
	<office:presentation>
	<xsl:apply-templates  select="document('list.xml')/list/doc" mode="diapos"/>
	</office:presentation>
    	</office:body>
    </xsl:copy>
  </xsl:template>

  <xsl:template match="/list/doc" mode="styles">
	<xsl:apply-templates select="document(concat('src/',@file,'_FILES','/content.xml'))/office:document-content/office:automatic-styles/*">
	<xsl:with-param name="file" ><xsl:value-of select="substring-before(@file,'.')"/></xsl:with-param>
    </xsl:apply-templates>
  </xsl:template>

<xsl:template match="/list/doc" mode="diapos">
	<xsl:apply-templates select="document(concat('src/',@file,'_FILES','/content.xml'))/office:document-content/office:body/office:presentation/draw:page">
	<xsl:with-param name="file" ><xsl:value-of select="substring-before(@file,'.')"/></xsl:with-param>
    </xsl:apply-templates>
</xsl:template>


<xsl:template match="@style:name">
  <xsl:param name="file"></xsl:param>
  <xsl:attribute name="style:name">
    <xsl:value-of select="concat($file,'_',.)"/>
  </xsl:attribute>
</xsl:template>

<xsl:template match="@draw:text-style-name">
<xsl:param name="file"></xsl:param>
  <xsl:attribute name="draw:text-style-name">
    <xsl:value-of select="concat($file,'_',.)"/>
  </xsl:attribute>
</xsl:template>
<xsl:template match="@draw:style-name">
<xsl:param name="file"></xsl:param>
  <xsl:attribute name="draw:style-name">
    <xsl:value-of select="concat($file,'_',.)"/>
  </xsl:attribute>
</xsl:template>
<xsl:template match="@presentation:style-name">
<xsl:param name="file"></xsl:param>
  <xsl:attribute name="presentation:style-name">
    <xsl:value-of select="concat($file,'_',.)"/>
  </xsl:attribute>
</xsl:template>
<xsl:template match="@text:style-name">
<xsl:param name="file"></xsl:param>
  <xsl:attribute name="text:style-name">
    <xsl:value-of select="concat($file,'_',.)"/>
  </xsl:attribute>
</xsl:template>


</xsl:stylesheet>


<!--
    Plus vieux code.

  <xsl:template match="node()|@*">
    <xsl:copy>
      <xsl:apply-templates select="node()|@*"/>
    </xsl:copy>
  </xsl:template>

  <xsl:template match="office:presentation">
    <xsl:copy>
      <xsl:apply-templates  select="document('list.xml')/list/doc"/>
	</xsl:copy>
  </xsl:template>
  
  <xsl:template match="/list/doc">
    <xsl:apply-templates select="document(concat('src/',@file,'_FILES','/content.xml'))/office:document-content/office:body/office:presentation/draw:page">
    <xsl:with-param name="file" select="@file"/>
    </xsl:apply-templates>
  </xsl:template>

  
	<xsl:template match="draw:page">
		<xsl:copy>
		<xsl:apply-templates select="node()|@*"></xsl:apply-templates>
		</xsl:copy>
	</xsl:template>

</xsl:stylesheet>
-->
